====== D-Bus ======

D-Bus est une des premières spécifications Freedesktop. D-Bus fonctionne donc avec la plupart des applications Gnome et KDE en envoyant des messages

D-Bus est actuellement un démon permettant la communication inter-processus. Il y a 2 démons :
  * le démon système : il est lancé avec les privilèges du système et il ne peut y en avoir qu'un qui fonctionne même sur un système multi-utilisateur.
  * le démon de session : chaque session utilisateur a son propre démon qui fonctionne et n'interfère pas avec la session d'un autre utilisateur.

Un exemple : HAL (Hardware Abstraction Layer) qui remonte les événements au système tel que le branchement d'une clef usb par exemple, par le biais du démon système.

===== Utilisation =====

L'outil graphique **[[apt://d-feet|d-feet]]** permet de visualiser et d'envoyer des messages D-Bus.

Exemple d'utilisation en ligne de commande :
  * Changer la luminosité de l'écran à 50% :<code>$ dbus-send --session --dest="org.freedesktop.PowerManagement" \
/org/freedesktop/PowerManagement/Backlight org.freedesktop.PowerManagement.Backlight.SetBrightness uint32:50</code>
  * Récupérer la luminosité de l'écran : <code>$ dbus-send --session --print-reply --dest="org.freedesktop.PowerManagement" \
/org/freedesktop/PowerManagement/Backlight org.freedesktop.PowerManagement.Backlight.GetBrightness</code>
  * Observer les signaux passant sur le bus : <code>$ dbus-monitor --session "type='signal',interface='org.freedesktop.PowerManagement.Backlight'"</code>
  * Mettre l'ordinateur en veille : <code>$ dbus-send --session --print-reply --dest="org.freedesktop.PowerManagement" \
/org/freedesktop/PowerManagement org.freedesktop.PowerManagement.Suspend</code>

===== Références =====

  * [[https://www.linuxjournal.com/article/7744]] (en) -- Présentation de DBus plutôt orientée pour les développeurs
  * [[http://www.ndesk.org/DBusExplorer|dbus-explorer]] (fr) -- autre outil graphique (qui pourra aussi aider les développeurs)
  * [[http://www.unixgarden.com/index.php/programmation/decouvertes-et-experimentation-avec-d-bus|Découvertes et expérimentation avec D-Bus ]] (fr) -- Un article/Tutoriel sur D-Bus.


----
//Contributeurs : [[utilisateurs:Id2ndR]]//, Masterfoon